<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en" xml:lang="en" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<head>
<META http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Resources for Customizing Methods</title>
<meta name="uma.type" content="SupportingMaterial">
<meta name="uma.name" content="resources_for_customizing_methods">
<meta name="uma.presentationName" content="Resources for Customizing Methods">
<meta name="element_type" content="other">
<meta name="filetype" content="description">
<meta name="role" content="">
<link rel="StyleSheet" href="./../../../css/default.css" type="text/css">
<script src="./../../../scripts/ContentPageResource.js" type="text/javascript" language="JavaScript"></script><script src="./../../../scripts/ContentPageSection.js" type="text/javascript" language="JavaScript"></script><script src="./../../../scripts/ContentPageSubSection.js" type="text/javascript" language="JavaScript"></script><script src="./../../../scripts/ContentPageToolbar.js" type="text/javascript" language="JavaScript"></script><script src="./../../../scripts/contentPage.js" type="text/javascript" language="JavaScript"></script><script type="text/javascript" language="JavaScript">
					var backPath = './../../../';
					var imgPath = './../../../images/';
					var nodeInfo=null;
					contentPage.preload(imgPath, backPath, nodeInfo,  '', false, false, false);
				</script>
</head>
<body>
<div id="breadcrumbs"></div>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td valign="top"><a name="Top"></a>
<div id="page-guid" value="_omneEMX4EduywMSzPTUUwA"></div>
<table border="0" cellspacing="0" cellpadding="0" width="100%">
<tr>
<td class="pageTitle" nowrap="true">Resources for Customizing Methods</td><td width="100%">
<div align="right" id="contentPageToolbar"></div>
</td><td width="100%" class="expandCollapseLink" align="right"><a name="mainIndex" href="./../../../index.htm"></a><script language="JavaScript" type="text/javascript" src="./../../../scripts/treebrowser.js"></script></td>
</tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td class="pageTitleSeparator"><img src="./../../../images/shim.gif" alt="" title="" height="1"></td>
</tr>
</table>
<div class="overview">
<table width="97%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="50"><img src="./../../../images/supportingmaterial.gif" alt="" title=""></td><td>
<table class="overviewTable" border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="top">This supporting material provides guidance on how to customize an existing method element by using Method Composer and provides links to additional information on method customization.</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
<div class="sectionHeading">Relationships</div>
<div class="sectionContent">
<table class="sectionTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<th class="sectionTableHeading" scope="row">Related Elements</th><td class="sectionTableCell">
<ul>
<li>
<a href="./../../../practice.mgmt.iterative_dev.base/guidances/toolmentors/use_method_composer_to_update_process_9A2A4461.html" guid="_pJJuIOFSEdyhmsbt0Xyl8A">Use Rational Method Composer to Update the Process</a>
</li>
</ul>
</td>
</tr>
</table>
</div>
<div class="sectionHeading">Main Description</div>
<div class="sectionContent">
<table class="sectionTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td class="sectionTableSingleCell"><p> There are several use scenarios for <a class="elementLink" href="./../../../core.default.uma_concept.base/guidances/termdefinitions/method_configuration_C2B8FA8A.html" guid="__V7pAMaEEduMlb2cQZNTYw">method configuration</a>s produced by using EPF Composer or Rational Method Composer 
  (both referred to generically here as "Method Composer"). The simplest&nbsp;is 
  to use the&nbsp;published content as-is (either using a prepublished Web site 
  or by publishing one using the content that is included with Method Composer).&nbsp;However, 
  you may be&nbsp;looking for&nbsp;how to add, remove, suppress, or modify <a class="elementLink" href="./../../../core.default.uma_concept.base/guidances/termdefinitions/method_content_6972AE81.html" guid="_Ts2joB_MEdq6CKKKq4D7YA">method content</a>&nbsp;or <a class="elementLink" href="./../../../core.default.uma_concept.base/guidances/termdefinitions/process_68E308B4.html" guid="_yQ5m2NnmEdmO6L4XMImrsA">process</a>&nbsp;elements, 
  or both, to make an existing method configuration more&nbsp;suitable&nbsp;to 
  your teams' needs, while keeping it consistent and understandable. </p>
This guidance page describes typical customization scenarios and&nbsp;then provides 
references to additional information on how to customize methods. 
<h3> Customization scenarios </h3>
<p> The following sections describe&nbsp;possible customization scenarios. For 
  information on specific tool features, consult the Method Composer online Help. 
  For&nbsp;additional information on customizing methods, see the Additional Resources 
  section that follows here. </p>
<h4> Use existing plug-ins and packages to build your own process </h4>
<p> Some consider this the most straight-forward customization scenario. Based 
  on the provided content, you can use Method Composer to pick and choose the 
  packages with the content that you want to publish and make available to your 
  team. Removing a method package removes all references to the content of that 
  package from the published process. For example, you can simplify a process 
  to have it contain a minimal subset of its content by removing packages that 
  contain elements of work that you do not want to perform. You do this by creating 
  a new method configuration (or copying an existing one) into your method library. 
  You can select packages as appropriate without affecting the configuration provided. 
</p>
<h4> Add&nbsp;method content&nbsp;that your team needs </h4>
<p> Some teams may need to perform a different task that is not covered by the 
  standard content. Maybe they need to perform an extra step in an existing task, 
  or they may need to add a new guideline for a given technique that they are 
  following. Eventually, they need a new template for a document (or they may 
  need to add or remove sections in an existing template). </p>
<p> In such situations, the recommended approach is to create a separate plug-in 
  in your library.&nbsp;It is not a good practice&nbsp;to make changes in the 
  provided plug-in (meaning any plug-in for which you do not have control), because 
  new versions of these plug-ins, when deployed, can override the changes that 
  you have made. </p>
<p> Method Composer provides a series of mechanisms that allow you to indirectly 
  modify the content in an existing plug-in by using <i>content variability</i>. 
  In your plug-in, you can define an element that contributes, extends, or replaces 
  an element in the existing plug-in. For example, in your plug-in, you can define 
  a task that contributes a new step to an existing task. You can also define 
  a new artifact that replaces an existing artifact, and this new artifact can 
  have a different name, structure, and associated template, for example. Then 
  all you need to do is make sure that the existing plug-in and your new plug-in 
  are part of the configuration to be published. During publication, Method Composer 
  will resolve the content variability that you defined by adding the new content 
  into the existing content where appropriate, replacing existing content with 
  the content you defined, and so on.&nbsp;&nbsp; </p>
<h4> Define a different development lifecycle </h4>
<p> Both method content and process are created independently from&nbsp;each other. 
  For example, you create tasks in the method content (and define their&nbsp;inputs, 
  outputs, and responsible roles), but you do not necessarily define the lifecycle 
  of your process, meaning the sequence in which the various tasks will be performed. 
  On the process side, you then define the lifecycle (such as phases, iterations, 
  activities, and tasks), as well as the precedence among these elements. </p>
<p> Some teams may find the method content appropriate without any further customization, 
  but they may want to work by following a different software development lifecycle. 
  For example, some teams may like the four development phases and iterations 
  from the unified process, but some may want to develop iteratively, without 
  being tied to a specific phase structure. Again, you can add, remove and replace 
  elements in the work breakdown structure of an existing process by applying 
  process variability. </p>
<p> As an alternative to tailoring an existing process, you can write a completely 
  new process that reuses activities from one or more existing processes. In cases 
  where you cannot find any reusable material at all, you can also create a completely 
  new process from scratch. In most cases, however, you will start developing 
  your own process by assembling reusable building blocks from method content, 
  as well as predefined process patterns&nbsp;called <a class="elementLinkWithUserText" href="./../../../core.default.uma_concept.base/guidances/termdefinitions/capability_pattern_F5DDC5F.html" guid="_2RUJACO4EdqaNq6Ptg8uyA">capability 
  patterns</a>. The resulting assembled process is called a&nbsp;<a class="elementLinkWithUserText" href="./../../../core.default.uma_concept.base/guidances/termdefinitions/delivery_process_BCDF50B7.html" guid="_ZufeMCO3EdqaNq6Ptg8uyA">delivery 
  process</a>. This newly created delivery process&nbsp;is part of a configuration 
  that you publish and make available to members of your team. </p>
<h4> Publish the process Web site </h4>
<p> Every customization scenario is finalized by publishing content as HTML (on 
  a Web site). Method Composer enables you to publish&nbsp;content based on a 
  given configuration, which will publish all of the content available from the&nbsp;method 
  and process packages selected in that configuration. Another option for publishing 
  is to select only the capability patterns or delivery process of interest. This 
  will make available only the content related to the process packages that you 
  select. </p>
<p> For the published Web site look and feel, you can customize the views and 
  nodes in the directory (tree) browser by defining <a class="elementLinkWithUserText" href="./../../../core.default.uma_concept.base/guidances/termdefinitions/custom_category_554AC4D6.html" guid="_eqw94MaFEduMlb2cQZNTYw">custom 
  categories</a> that will be part of your configuration. </p>
<h3> Additional resources&nbsp; </h3>
<p> For more information on the fundamental concepts of method content and process, 
  see <a class="elementLinkWithType" href="./../../../core.default.uma_concept.base/guidances/concepts/basic_process_concepts_C90EF089.html" guid="_FxJEkFUKEd2_rMtRMt_EMg">Concept: Basic Process Concepts</a>. </p>
<p> For information on EPF Composer, see <a class="elementLink" href="./../../../core.default.tool_def.base/guidances/supportingmaterials/epf_resources_446F3946.html" guid="_C2FS4F_lEd2zpKtX6B7lBg">EPF Resources</a>. </p>
<p> For information on Rational Method Composer, see <a class="elementLink" href="./../../../core.default.tool_def.base/guidances/supportingmaterials/rational_method_composer_resources_ADE2B192.html" guid="_dlGBQF_nEd2zpKtX6B7lBg">Rational Method Composer Resources</a>. </p>
<p> For detailed customization scenarios, consult the tutorials included in the 
  Method Composer online Help, as well the general authoring topics. </p></td>
</tr>
</table>
</div>
<div class="sectionHeading">More Information</div>
<div class="sectionContent">
<table class="sectionTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<th class="sectionTableHeading" scope="row">Supporting Materials</th><td class="sectionTableCell">
<ul>
<li>
<a href="./../../../core.default.tool_def.base/guidances/supportingmaterials/epf_resources_446F3946.html" guid="_C2FS4F_lEd2zpKtX6B7lBg">EPF Resources</a>
</li>
<li>
<a href="./../../../core.default.tool_def.base/guidances/supportingmaterials/rational_method_composer_resources_ADE2B192.html" guid="_dlGBQF_nEd2zpKtX6B7lBg">Rational Method Composer Resources</a>
</li>
</ul>
</td>
</tr>
<tr valign="top">
<th class="sectionTableHeading" scope="row">Tool Mentors</th><td class="sectionTableCell">
<ul>
<li>
<a href="./../../../practice.mgmt.iterative_dev.base/guidances/toolmentors/use_method_composer_to_update_process_9A2A4461.html" guid="_pJJuIOFSEdyhmsbt0Xyl8A">Use Rational Method Composer to Update the Process</a>
</li>
</ul>
</td>
</tr>
</table>
</div>
<table class="copyright" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="copyright"><p> This program and the accompanying materials are made available under the<br />
  <a href="http://www.eclipse.org/org/documents/epl-v10.php" target="_blank">Eclipse 
  Public License V1.0</a>, which accompanies this distribution. </p><p/><p> <a class="elementLink" href="./../../../core.default.release_copyright.base/guidances/supportingmaterials/openup_copyright_C3031062.html" guid="_UaGfECcTEduSX6N2jUafGA">OpenUP Copyright</a></p></td>
</tr>
</table>
</td>
</tr>
</table>
</body>
<script type="text/javascript" language="JavaScript">
				contentPage.onload();
			</script>
</html>
